Method and device for monitoring the condition of an industrial robot

ABSTRACT

A method for monitoring the condition of an industrial robot having a plurality of links movable relative to each other, and a plurality of actuators controlling the movements of the links. A feed forward torque is calculated for at least one of the actuators based on reference values for the position of the actuator and a mathematical model of the robot calculating a feedback torque for the actuators based on measured values from the actuators and reference values for the position of the actuator. A torque is calculated for the actuator at least based on the feedback torque. A difference is monitored between the calculated torque for the actuator and the feed forward torque. It is determined whether the difference is normal or non-normal, and based thereon monitoring the condition of the robot.

TECHNICAL FIELD

The present invention is concerned with monitoring the condition of anindustrial robot. The invention is particularly useful for monitoringmalfunction of the robot.

BACKGROUND ART

An industrial robot comprises a manipulator and a control system. Themanipulator comprises links movable relative to each other. The linksare different robot parts such as a base, arms, and a wrist. Each jointhas joint components such as a motor, motor gears and motor bearings.Actuators, such as motors, drive the movements of the manipulator. Thecontrol system comprises one or more computers and drive units forcontrolling the manipulator. The position and speed of the links arecontrolled by the control system of the robot that generates controlsignals to the motors. The control system includes a path planneradapted to calculate reference values for the position of the actuators.The drive units are adapted to calculate reference values for thetorques of the actuators. The drive unit is provided with a feedbackloop calculating a feedback torque for the actuator based on measuredposition values from the actuator and the position reference values fromthe path planner. The drive units are adapted to calculate the referencevalues for the torques of the actuators based on the feedback torquefrom the feedback loop. In order to improve the control of theactuators, some drive units are further provided with a feed forwardloop calculating a feed forward torque for the actuator based on theposition reference values from the path planner and a mathematical modelof the robot. In those cases, the control units are adapted to calculatethe reference values for the torques of the actuators based on thefeedback torque from the feedback loop as well as on the feed forwardtorque from the feed forward loop.

Industrial robots are used in industrial and commercial applications toperform precise and repetitive movements. It is then important for afaultless functionality of the robot that the industrial robot isperforming according to its nominal performance, which means that thelinks have to bee in good condition and perform together in an expectedway.

However, it is difficult to detect or determine if an industrial robotis not performing according to its nominal performance. The operator,such as a service technician, has to rely on what he sees and oninformation from the control system about the performance of the robot,such as the position and speed of the motors taken from readings onsensors on the manipulator. The operator then analyses the presentcondition of the robot based on his personal experience resulting in avarying diagnosis due to subjective measures. In many cases the operatoranalysing the present condition and performance of the robot also needsto evaluate information from different sources, such as different motorsat the same time or external conditions in the facility where the robotis located or is even faced with an emergency stop. To find the cause ofa failure the operator may have to try different hypotheses and it istherefore time consuming and often results in long stand-still periodsfor the robot causing huge costs.

Due to frequent personal rotation today, operators of robot servicetechnician staff do not have sufficient experience to diagnose andisolate a failure in performance of the robot.

It is desirable to attain a simple method to diagnostic the presentperformance or condition of the robot.

JP62024305 discloses a method for detecting servo abnormality of anindustrial robot. The method includes monitoring the deviation betweenthe reference value of the position of an actuator of a drive source andpresent values of the position of the actuator and based thereon detectservo abnormality. This method supervises the control error, i.e. thedifference between the reference position and the measured value of theposition in order to detect abnormalities. A disadvantage with thismethod is that the control error has large natural variations, forexample due to changes in the position reference values, which are notcaused by an error in the robot performance. Abnormalities due to wearof the drive components, such as the motors, motor gears, motor bearingsand axes, and brakes, causes small and slow changes in the controlerror. Accordingly, it is difficult to detect changes in the controlerror due to wear in the drive components.

SUMMARY OF THE INVENTION

The aim of the invention is to provide an improved method toautomatically monitor the condition of an industrial robot.

Such a method comprises: calculating a feed forward torque for at leastone of the actuators based on reference values for the position and/orfor the velocity of the actuator, and a mathematical model of the robot,calculating a feedback torque for the actuators based on measured valuesfrom the actuators and said reference values for the position of theactuator, calculating a reference value for the torque of the actuatorbased on said feed forward torque and said feedback torque, monitoringthe difference between the reference value for the torque of theactuator and the feed forward torque, determining whether the differenceis normal or non-normal, and based thereon monitoring the condition ofthe robot.

The calculated feed forward torque is an expected torque due to dynamicand/or kinematic forces on robot parts, such as forces on the arms ofthe robot due to gravity and inertia. According to the invention, thedifference between the reference values for the torque of the actuatorand the feed forward torque from the feed forward loop is monitored inorder to detect non-normal changes due to malfunction of the robot. Forexample, it is possible to detect deviation trends in amplitudedistribution and/or detect deviation trends in frequency distributionand thereby recognize mechanical problems. By subtracting the feedforward torque from the reference torque, normal variations in thereference torque, for example, due to known dynamic and kinematicbehaviours of the robot, are reduced. Thereby, the sensitivity fordetecting non-normal changes is considerably increased and accordinglythe monitoring of the robot is enhanced.

According to an embodiment of the invention, the calculated feedbacktorque, which is the same as the difference between the reference valuefor the torque and the feed forward torque, is monitored and it isdetermined whether the feedback torque is normal or non-normal.

According to an embodiment of the invention, the difference between thereference value for the torque of the actuator and the feed forwardtorque is calculated by subtracting a calculated feed forward torquefrom the calculated reference value for the torque. The calculateddifference is monitored. It is not required to use the same feed forwardtorque for controlling the actuators as for monitoring the condition ofthe robot. On the contrary, it can be an advantage to use a morecomplete model for monitoring the robot than for controlling it. Forexample, it is possible to calculate two different feed forward torques;a first feed forward torque, calculated based on a first model of therobot, which is used for calculating the reference values, and a secondfeed forward torque, which is calculated based on a different model ofthe robot, which is used for monitoring the robot. For example, thefirst calculated feed forward torque is calculated based on a model ofthe robot, which does not consider all weaknesses of the robot arms, andthe second feed forward torque is calculated based on a model of therobot, which does consider torques due to gravity forces on the robotarms.

In another embodiment of the invention, said monitored condition of therobot is wear of the driving components. The driving components compriseat least the mechanical units: motors, motor gears, bearings, axes, andbrakes. This makes it possible to detect wear of the motors, motorgears, motor bearings and axes, and brakes. Further by determining wearof the driving component the need for service may be predicted.

In another embodiment of the invention a deviation parameter iscalculated based on the difference between the reference value for thetorque and the feed forward torque, which parameter is a measure of thecondition of the performance of the robot. This is an advantage becauseit makes it possible to monitor the parameter and react on changes inthe parameter.

Other advantageous features and advantages of the invention will appearfrom the following description.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be described in more detail in connectionwith the enclosed schematic drawings.

FIG. 1 shows an industrial robot comprising a manipulator and a controlsystem according to an embodiment of the invention,

FIGS. 2 a-b show block diagrams illustrating examples of control loopsfor controlling an actuator of the robot,

FIG. 3 shows a block diagram illustrating a device for monitoringmalfunction of an industrial robot according to an embodiment of theinvention,

FIG. 4 shows a flow chart illustrating a method for monitoringmalfunction of an industrial robot according to an embodiment of theinvention, and

FIG. 5 shows an example diagram viewing how a deviation parameter mayvary over time.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 shows an industrial robot 1 comprising a manipulator 2 andcontrol system 3. The industrial robot 1 has a plurality of linksmovable relative to each other about a plurality of joints 4 a-c. Thelinks shown in FIG. 1 are rotatable in relation to each other around anaxis of rotation. Other types of robots have links that are linearlymovable relative each other. The links are in this case robot parts,such as a stand 5 a, robot arms 5 b-d, and a tool holder 5 e. Theindustrial robot comprises a plurality actuators 6 a-c for controllingthe position and speed of the links. Each actuator is connected to adrive unit 29 a-c for generating control signals to the motor. In thisembodiment the drive units are located in the control system. However,it is also possible to locate the drive units on the manipulator, closeto the actuator. The actuator comprises driving components such as, forinstance, motors, motor gears, bearings, axes, brakes.

Each joint of the manipulator is provided with a sensor 8 a-c detectingthe position of the joint. Signals from the sensors 8 a-c aretransmitted to the control system 3. The control system 3 therebyreceives signals comprising measured data P_(m). The measured datacomprises, for instance, joint angular position, joint velocity, andjoint acceleration.

The control system 3 comprises, in this case, a logic unit 24, and amemory means 26 for storing control programs including movementinstructions for the robot, a program executer 27 for executing themovement instructions, a path planner 28 for planning robot paths, anddrive units 29 a-c for generating torque reference signals T_(D) to themotors. The path planner 28 is planning the robot paths and furthergenerating joint reference values to the drive unit 29 a-c. The jointreference values, for example, represent reference values for positionsand velocities of the joints. The path planner 28 generates the jointreference values based on movement instructions from the robot programand a mathematical model of the robot. During operation of the robot,the program instructions are executed, thereby making the robot work asdesired. The drive units 29 a-c are controlling the motors bycontrolling the motor torque and the motor position in response to thejoint reference values from the path planner 28. The logic unit orcomputing unit comprises a microprocessor, or processors comprising acentral processing unit (CPU) or a field-programmable gate array (FPGA)or any a semiconductor device containing programmable logic componentsand programmable interconnects for performing the steps in a computerprogram. The control system 3 further comprises a monitoring device 35according to an embodiment of the invention.

FIG. 2 a shows an example of one of the drive units 29 a describedabove. The drive unit 29 a receives joint reference values P_(ref) fromthe path planner 28 of the robot and measured values P_(m) for jointpositions and/or joint velocities from the sensors. The drive unit 29 ais configured to calculate reference values for the torque T_(D) of theactuator. The drive unit comprises a feed forward loop including acalculation unit 30 configured to calculate a feed forward torque T_(FF)for the actuator based on join reference values P_(ref) from the pathplanner and a mathematical model of the robot, and a feedback loopincluding a feedback controller 31, configured to calculate a feedbacktorque T_(FB) for the actuator based on measured values P_(m) from theactuator and joint reference values P_(ref) from the path planner.Typically, the mathematical model is a kinematic and dynamic modeldescribing the robot.

The drive unit 29 a further includes a first summing means 32 configuredto continuously calculate the deviation ΔP between the measured jointvalues P_(m) and the joint reference values P_(ref). The calculateddeviation ΔP is fed to the feedback controller 31. The drive unit 29 afurther includes a second summing means 33 configured to continuouslycalculate the reference torque T_(D) for the actuator as the sum of thefeed forward torque T_(FF) and the feedback torque T_(FB) for theactuator.

T _(D) =T _(FF) +T _(FB)

Accordingly, the difference T_(diff) between the calculated referencetorque T_(D) and the calculated feed forward torque T_(FF) is the outputT_(FB) from the feedback controller.

T _(diff) =T _(D) −T _(FF) =T _(FB)

In this embodiment, the feedback torque T_(FB) is used for monitoringthe condition of the robot.

FIG. 2 b illustrates another embodiment of the invention. Thecalculation unit 30 b is configured to calculate a second feed forwardtorque T_(FF2) based on another mathematical model of the robot, whichmore completely describes the kinematic and dynamic behaviour of therobot and the position reference values P_(ref) from the path planner.The difference T_(diff) between the reference value for the torque andthe feed forward torque is calculated by subtracting the second feedforward torque T_(FF2) from the torque reference values T_(D).

T _(diff) =T _(D) −T _(FF2)

In this embodiment, the difference between the reference value T_(D) andthe second feed forward torque T_(FF2) is used for monitoring thecondition of the robot.

FIG. 3 shows a block diagram illustrating a monitoring device 35 formonitoring malfunction of an industrial robot. The monitoring deviceaccording to the invention is configured to monitor the differenceT_(diff) between the reference value for the torque T_(D) of theactuator and the feed forward torque T_(FF), T_(FD) and to determinewhether the difference is normal or non-normal, and to monitor thecondition of the robot based thereon. According to one embodiment of theinvention, the output T_(FB) from the feedback controller is monitored.According to another embodiment of the invention, the difference betweenthe reference value for the torque T_(D) of the actuator and the feedforward torque T_(FF2) is calculated by subtracting the output T_(FF2)from calculation means 30 from the output T_(D) from the summing means33.

The monitoring device 35 is implemented in the control system 3 assoftware, hardware, or a combination thereof. The monitoring device 35monitors the condition of the robot based on whether the differencebetween the reference value and the feed forward torque is normal ornon-normal. A deviation parameter K is calculated in the monitoringdevice 35 dependent on the difference between the reference value forthe torque T_(D) of the actuator and the feed forward torque T_(FF). Thedeviation parameter K is for instance calculated by normalizing thedifference, or by calculating a logarithm of the difference or byprocessing the difference using any other mathematical method. Themonitoring device 35 determines whether the difference is normal ornon-normal. This is for instance done by comparing the deviationparameter K with a preset reference constant value V representing amaximum allowed value of the deviation parameter. Another method todetermining whether the deviation is normal or non-normal is to detectdeviation trends in amplitude distribution and/or detect deviationtrends in frequency distribution of the deviation parameters K during aperiod of time. Detecting deviation trends may also be done bycalculating a differential quotient value between two or more deviationparameters subsequent in time and compare these to a referencedifferential quotient value. The deviation parameter K, for instance, ismonitored shown on a display in order for the operator to manuallycontrol the condition of the robot. The monitoring device 35 is adaptedto monitor the deviation parameter, or the change in the deviationparameter K during a time period. The monitoring device 35 is in thiscase located in the control system.

The monitoring device 35 is in this case adapted to execute an order tothe control systems based on the monitored deviation. An example on anorder is executing an alarm if the deviation is determined to benon-normal, for instance, when the deviation exceeds a maximum value.

The monitoring device 35 may also be located on an external computer.The monitoring device may also be adapted for manual control such astransfer of the deviation parameter K, or the change in the deviationparameter K during a time period to an external interface, such adisplay or other manual control means such as light emitting diodes.

The monitored condition of the robot is for instance wear of the drivingcomponents. The detected condition may be slipping in the gears, agreater motor speed/acceleration or a greater load then expected.

In an embodiment, the monitoring device is adapted to both analyse thedeviation and to generate an alarm if the difference between thereference value for the torque T_(D) of the actuator and the feedforward torque T_(FF) is non-normal. For instance, the difference, orthe deviation parameter K is compared with a maximum value and an alarmis executed when the difference, or the deviation parameter K exceedsthe maximum value.

In the following, a method for monitoring the condition of an industrialrobot according to the invention will be described. The method is forclarity described for one joint controlled by one actuator but it is tobe understood that the same technique may be used controlling two ormore joints of the robot at the same time.

FIG. 4 shows a flow chart illustrating the method for monitoring thecondition of an industrial robot according to an embodiment of theinvention. The method according to the present invention may beimplemented as software, hardware, or a combination thereof. The methodcomprises the following steps:

Reference values T_(D) for the actuator are continuously retrieved fromthe summing means 32, block 41. Feed forward torques T_(FF) arecontinuously retrieved from the calculation means 30, block 42. Thedifferences between the reference values for the torques T_(D) and thefeed forward torques T_(FF) are continuously calculated, block 44. Thus,the differences between the reference values for the torque T_(D) of theactuator and the feed forward torques T_(FF) are continuously monitored.The differences between the torque reference values and the feed forwardtorques are then analyzed, and it is determined whether the differenceis normal or non-normal, block 46. Based on the analysis of whether thedifferences between the reference values for the torque T_(D) and thefeed forward torques T_(FF) is normal or non-normal, the condition ofthe robot (48) is monitored, block 48, for instance, shown on anexternal display or in the control system.

The difference between the reference value for the torque T_(D) of theactuator and the feed forward torque T_(FF) is in one embodiment furtherprocessed and a deviation parameter K is calculated dependent on thecalculated difference. The deviation parameter K, for instance, iscalculated by normalizing the difference or by calculating a logarithmof the difference. The deviation parameter K is, for instance, analyzedby comparing the deviation parameter K with a preset reference constantvalue V representing a maximum allowed value of the deviation parameter.The deviation parameter may also be analysed by detecting deviationtrends in amplitude distribution and/or deviation trends in frequencydistribution on the deviation parameter K during a period of time. Alarge deviation indicates a change in the values representing themechanical properties of the robot.

These steps can be carried out in the control system of the robot or inan external computer. The differences between the reference values forthe torque T_(D) of the actuator and the feed forward torques T_(FF) arecontinuously calculated and monitored so that the condition of anindustrial robot is continuously monitored.

Further based on the monitored condition the control system can beadapted to execute orders to the control system, such as executing analarm when the deviation is determined to be non-normal. Due to limitedcomputer capacity of the control system it is advantageous to transferthe difference or the deviation parameter K to an external computerexecuting the methods according to the invention.

FIG. 5 shows an example diagram viewing how the deviation parameter mayvary over time. A maximum value V for the deviation parameter is set inthe diagram. This figure shows the robot performance when the robotperformance is non-normal, and the deviation exceeds the preset maximumvalue.

1. A method for monitoring a condition of an industrial robot comprisinga plurality of links movable relative to each other, and a plurality ofactuators controlling the movements of the links, the method comprising:calculating a feed forward torque for at least one of the actuatorsbased on reference values for a position of the actuator and amathematical model of the robot, calculating a feedback torque for theactuators based on measured values from the actuators and said referencevalues for the position of the actuator, calculating a reference valuefor a torque of the actuator at least based on said feedback torque,monitoring a difference between the reference value for the torque ofthe actuator and the feed forward torque, and determining whether thedifference is normal or non-normal, and based thereon monitoring thecondition of the robot.
 2. The method according to claim 1, furthercomprising: calculating a difference between the reference value for thetorque the actuator and the calculated feed forward torque, andmonitoring the calculated difference.
 3. The method according to claim1, further comprising: monitoring the calculated the feedback torque anddetermining whether the feedback torque is normal or non-normal.
 4. Themethod according to claim 1, wherein said monitored condition of therobot comprises wear of driving components of the robot.
 5. The methodaccording to claim 4, wherein said driving components comprises any of:motors motor gears, bearings, axes, and brakes.
 6. The method accordingto claim 1, further comprising: generating an alarm when said differenceexceeds a maximum value.
 7. The method according to claim 1, furthercomprising: calculating a deviation parameter based on the differencebetween the reference value for the torque of the actuator and the feedforward torque, the deviation parameter being a measure of the conditionof the performance of the robot.
 8. A device for monitoring a conditionof an industrial robot, said robot comprising a plurality of linksmovable relative to each other, actuators controlling the movements ofthe links, a path planner adapted to calculate reference values for aposition of the actuators, and at least one drive unit calculatingreference values for the torque of the actuators, the drive unit havinga feed forward loop calculating a feed forward torque for the actuatorbased on said reference values for the position of the actuator and amathematical model of the robot, and a feedback loop calculating afeedback torque for the actuator based on measured values from theactuator and said reference values for the position of the actuator,wherein the device is configured to monitor the difference between thereference value for the torque of the actuator and the feed forwardtorque, to determine whether said difference is normal or non-normal,and to monitor the condition of the robot based thereon.
 9. The deviceaccording to claim 8, wherein the device is configured to calculate thedifference between the reference value for the torque of the actuatorand the feed forward torque, and to monitor the calculated difference.10. The device according to claim 8, wherein the device is configured tomonitor the calculated the feedback torque and to determine whether thefeedback torque is normal or non-normal.
 11. The device according toclaim 8, wherein said device is adapted to generate an alarm if saiddifference is non-normal.
 12. The device according to claim 8, whereinsaid device is adapted to calculate a deviation parameter based on thedifference between the reference value for the torque of the actuatorand the feed forward torque, which parameter is a measure of thecondition of the performance of the robot.